const marked = require('marked')
/**
 * 导出一个函数，是loader对加载到的资源的处理过程
 * @param {*} source 加载的资源文件的内容
 * @return 加工后的结果
 */
module.exports = source => {
  console.log(source)
  // return 'hello'
  // return 'console.log("hello")'

  const html = marked(source) // 解析 source，返回 html 字符串
  // 若直接返回 html，则会报错
  // return html

  /* 方法1: 把这段html作为 JavaScript 导出 */
  // 若简单的拼接，则html内部的换行符等，会造成语法错误
  // return `module.exports = "${html}"`
  // 可将其先转换为字符串，再进行导出
  // return `module.exports = ${JSON.stringify(html)}`
  // 或使用 ES Module 的形式导出
  // return `export default ${JSON.stringify(html)}`

  /* 方法2: 返回一个 html 字符串，交给下一个 loader 来处理字符串 */
  return html
}